home *** CD-ROM | disk | FTP | other *** search
/ Aminet 33 / Aminet 33 - October 1999.iso / Aminet / util / misc / VMM_src.lha / VMM / ffs.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-10  |  2.3 KB  |  132 lines

  1. struct FFSFileHeader
  2.   {
  3.   LONG  Type;
  4.   ULONG OwnKey;
  5.   ULONG BlocksInTable;
  6.   ULONG Reserved1;
  7.   ULONG FirstDataBlock;
  8.   ULONG Checksum;
  9.   ULONG DataBlocks [72];
  10.   ULONG Reserved2 [2];
  11.   ULONG ProtBits;
  12.   ULONG Size;
  13.   ULONG Comment [23];
  14.   ULONG CreatedDays;
  15.   ULONG CreatedMins;
  16.   ULONG CreatedTicks;
  17.   ULONG Name [8];
  18.   ULONG Reserved3 [2];
  19.   ULONG HardLinkBack;
  20.   ULONG Reserved4 [5];
  21.   ULONG HashChainPtr;
  22.   ULONG ParentKey;
  23.   ULONG ExtBlock;
  24.   LONG  SecondaryType;
  25.   };
  26.  
  27. struct FFSExtBlock
  28.   {
  29.   LONG  Type;
  30.   ULONG OwnKey;
  31.   ULONG BlocksInTable;
  32.   ULONG Reserved1 [2];
  33.   ULONG Checksum;
  34.   ULONG DataBlocks [72];
  35.   ULONG Reserved2 [47];
  36.   ULONG HeaderKey;
  37.   ULONG ExtBlock;
  38.   LONG  SecondaryType;
  39.   };
  40.  
  41. struct FFSDirBlock
  42.   {
  43.   ULONG  Type;
  44.   ULONG  OwnKey;
  45.   ULONG  SeqNum;
  46.   ULONG  DataSize;
  47.   ULONG  NextBlock;
  48.   ULONG  Checksum;
  49.   ULONG  HashTable[72];
  50.   ULONG  Reserved;
  51.   ULONG  OwnerXID;
  52.   ULONG  ProtBits;
  53.   ULONG  Junk;
  54.   char   Comment[92];
  55.   ULONG  Days;
  56.   ULONG  Mins;
  57.   ULONG  Ticks;
  58.   char   DirName[36];
  59.   ULONG  HardLink;
  60.   ULONG  HardLinkBack;
  61.   ULONG  Reserved2 [5];
  62.   ULONG  HashChainPtr;
  63.   ULONG  ParentKey;
  64.   ULONG  DirList;        /* These are used by DC-FFS */
  65.   ULONG  SecondaryType;
  66.   };
  67.  
  68. struct FFSRootBlock
  69.   {
  70.   LONG  Type;
  71.   ULONG Reserved1 [2];
  72.   ULONG HashTableSize;
  73.   ULONG Reserved2;
  74.   ULONG Checksum;
  75.   ULONG HashEntries [72];
  76.   LONG  BitmapValid;
  77.   ULONG BitmapBlocks [25];
  78.   ULONG BitmapExtBlock;
  79.   ULONG RootModifiedDays;
  80.   ULONG RootModifiedMins;
  81.   ULONG RootModifiedTicks;
  82.   ULONG VolumeName [8];
  83.   ULONG Reserved3 [2];
  84.   ULONG VolumeModifiedDays;
  85.   ULONG VolumeModifiedMins;
  86.   ULONG VolumeModifiedTicks;
  87.   ULONG VolumeCreatedDays;
  88.   ULONG VolumeCreatedMins;
  89.   ULONG VolumeCreatedTicks;
  90.   ULONG Reserved4 [3];
  91.   LONG  SecondaryType;
  92.   };
  93.  
  94. struct FFSBitmapBlock
  95.   {
  96.   ULONG Checksum;
  97.   ULONG BitmapData [127];
  98.   };
  99.  
  100. struct FFSBitmapExtBlock
  101.   {
  102.   ULONG BitmapBlocks [127];
  103.   ULONG NextBitmapExtBlock;
  104.   };
  105.  
  106. struct DCFFSCacheBlock
  107.   {
  108.   ULONG  Type;
  109.   ULONG  OwnKey;
  110.   ULONG  Parent;
  111.   ULONG  NumEntries;
  112.   ULONG  NextBlock;
  113.   ULONG  Checksum;
  114.   };
  115.  
  116. struct ListEntry
  117.   {
  118.   ULONG Key;
  119.   ULONG Size;
  120.   ULONG Protection;
  121.   ULONG OwnerXID;
  122.   UWORD Days;
  123.   UWORD Min;
  124.   UWORD Tick;
  125.   UBYTE Type;
  126.   UBYTE FileNameLength;
  127.   };
  128.  
  129. #define T_SHORT   0x0002
  130. #define T_LIST    0x0010
  131. #define T_DIRLIST 0x0021
  132.